﻿using System.Collections.Generic;
using Cos.Core.Model.Template;

namespace Cos.Module.Template
{
    public interface ITemplateService
    {
        Cos.Core.Model.Template.Template GetTemplate(int templateId);

        IEnumerable<Cos.Core.Model.Template.Template> GetTemplates();

        Cos.Core.Model.Template.Template SaveTemplate(Cos.Core.Model.Template.Template template);

        Part GetPart(int partId);

        Part GetPart(int templateId, string partName);

        IEnumerable<Part> GetParts(int templateId);

        Part SavePart(Part part);

        DataType GetDataType(int dataTypeId);

        IEnumerable<DataType> GetDataTypes();

        DataType SaveDataType(DataType dataType);
    }
}